const cluster = require('cluster') // node 多核能力
const http = require('http')
// http 服务器  1314 nginx(多线程) 代理 <- http 80 proxy
// www.baidu.com、a/b -> dns 
// location /
// {
//     proxy_pass http://127.0..1:1314/
// }
// 一台服务器的多线程 功能

const numCPUs = require("os").cpus().length
console.log(numCPUs)
// 管理 
if(cluster.isMaster) { // 主线程
    console.log(`主线程${process.pid} 正在进行`) //
    for(let i = 0; i < numCPUs; i++) {
        cluster.fork(); // 每一cpu就像主进程来一样工作
    }
}else {
    // 工作进程可以共享TCP/HTTP 服务
    http.createServer((req,res) => {
        res.writeHead(200,{'Content-Type':'text/plain;charset=UTF8'});
        res.end(`你好世界${process.pid}\n`)
    }).listen(8000)
    console.log(`工作进程${process.pid} 已启动`)
}